Reusable Architectural Decisions for DSL Design: Foundational Decisions in DSL Projects
نویسندگان
چکیده
Domain-specific languages (DSL) receive a constantly growing attention in the area of software development. However, so far the documentation of reusable architectural knowledge for DSL design is rather limited. In this paper, we systematically explore the DSL design space by combining reusable architectural decision modeling and software patterns. In particular, we have explored three reusable architectural decisions in this design space: the decision for the type of DSL development process, the decision for the concrete syntax style, and the decision for developing an external vs. an embedded DSL. These decisions are foundational for each DSL project. Each of these decisions has a number of (candidate) patterns for DSL design. These (candidate) patterns define alternative solutions in the shared context and problem space of the respective reusable architectural decision.
منابع مشابه
Reusable Architectural Decisions for DSL Design Foundational Decisions in DSL Development
Domain-specific languages (DSL) receive a constantly growing attention in the area of software development. However, so far the documentation of reusable architectural knowledge for DSL design is rather limited. In this paper, we systematically explore the DSL design space by combining reusable architectural decision modeling and software patterns. In particular, we have explored three reusable...
متن کاملA DSL toolkit for deferring architectural decisions in DSL-based software design
A number of mature toolkits and language workbenches for DSL-based design have been proposed, making DSL-based design attractive for many projects. These toolkits preselect many architectural decision options. However, in many cases it would be beneficial for DSL-based design to decide for the DSL’s architecture later on in a DSL project, once the requirements and the domain have been sufficien...
متن کاملFunctional Debugging
Domain Specific Languages (DSLs) are languages designed to solve problems in specific domains. For software projects with a lot of functional requirements, a DSL could be designed to allow domain experts to write functional specifications. Implementation of such a DSL might be time-consuming, thereby delaying feedback on design decisions. Furthermore, there is a need for tools that support debu...
متن کاملReusable Architectural Decision Models for Enterprise Application Development
In enterprise application development and other software construction projects, a critical success factor is to make sound architectural decisions. Text templates and tool support for capturing architectural decisions exist, but have failed to reach broad adoption so far. One of the inhibitors we perceived on large-scale industry projects is that architectural decision capturing is regarded as ...
متن کاملHarmonizing architectural decisions with component view models using reusable architectural knowledge transformations and constraints
Architectural design decisions (ADDs) have been used in recent years for capturing design rationale and documenting architectural knowledge (AK). However, various architectural design views still provide the most common means for describing and communicating architectural design. The evolution of software systems requires that both ADDs and architectural design views are documented and maintain...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009